package com.example.spring5.AOP.AOP操作;
/**
 * AOP术语:
 *  1.连接点
 *      类里面哪些方法可以被增强，这些方法成为连接点
 *  2.切入点
 *      实际被增强的方法叫切入点
 *  3.通知(增强)
 *      增强的逻辑部分成为通知(增强)
 *      通知(增强)的多种类型
 *          前置通知，后置通知，环绕通知，异常通知，最终通知(finally)
 *  4.切面   是一个动作
 *      把通知应用到切入点的过程
 *
 *
 */
/**
 * AOP 操作（准备工作）
 * 1、Spring 框架一般都是基于 AspectJ 实现 AOP 操作
 *      （1）AspectJ 不是 Spring 组成部分，独立 AOP 框架，
 *      一般把 AspectJ 和 Spring 框架一起使用，进行 AOP 操作
 * 2、基于 AspectJ 实现 AOP 操作
 *      （1）基于 xml 配置文件实现
 *      （2）基于注解方式实现（使用）
 * 3、在项目工程里面引入 AOP 相关依赖
 * 4、切入点表达式
 * （1）切入点表达式作用：知道对哪个类里面的哪个方法进行增强
 * （2）语法结构： execution([权限修饰符] [返回类型] [类全路径] [方法名称]([参数列表]) )
 * 举例 1：对 com.atguigu.dao.BookDao 类里面的 add 进行增强
 * execution(* com.atguigu.dao.BookDao.add(..))
 * 举例 2：对 com.atguigu.dao.BookDao 类里面的所有的方法进行增强
 * execution(* com.atguigu.dao.BookDao.* (..))
 * 举例 3：对 com.atguigu.dao 包里面所有类，类里面所有方法进行增强
 * execution(* com.atguigu.dao.*.* (..))
 *
 */
public class AOP操作准备工作 {
}
